package com.yiyahui.project.erp.service;

import java.util.List;

import com.yiyahui.framework.web.domain.AjaxResult;
import com.yiyahui.project.erp.domain.YiyaClosingMethods;
import com.yiyahui.project.erp.domain.requestVo.PayMoneyRequest;

/**
 * 主单结账流水方式Service接口
 * 
 * @author yiyahui
 * @date 2020-06-10
 */
public interface IYiyaClosingMethodsService 
{
    /**
     * 查询主单结账流水方式
     * 
     * @param id 主单结账流水方式ID
     * @return 主单结账流水方式
     */
    public YiyaClosingMethods selectYiyaClosingMethodsById(Long id);

    /**
     * 查询主单结账流水方式列表
     * 
     * @param yiyaClosingMethods 主单结账流水方式
     * @return 主单结账流水方式集合
     */
    public List<YiyaClosingMethods> selectYiyaClosingMethodsList(YiyaClosingMethods yiyaClosingMethods);

    /**
     * 新增主单结账流水方式
     * 
     * @param yiyaClosingMethods 主单结账流水方式
     * @return 结果
     */
    public int insertYiyaClosingMethods(YiyaClosingMethods yiyaClosingMethods);

    /**
     * 修改主单结账流水方式
     * 
     * @param yiyaClosingMethods 主单结账流水方式
     * @return 结果
     */
    public int updateYiyaClosingMethods(YiyaClosingMethods yiyaClosingMethods);

    /**
     * 批量删除主单结账流水方式
     * 
     * @param ids 需要删除的主单结账流水方式ID
     * @return 结果
     */
    public int deleteYiyaClosingMethodsByIds(Long[] ids);

    /**
     * 删除主单结账流水方式信息
     * 
     * @param id 主单结账流水方式ID
     * @return 结果
     */
    public int deleteYiyaClosingMethodsById(Long id);

    /**
     *
     * @param mainClosingEntriesIds
     * @return
     */
    List<YiyaClosingMethods> selectByMainClosingEntriesIds(List<Long> mainClosingEntriesIds);

    AjaxResult payMoney(PayMoneyRequest payMoneyRequest) throws Exception ;
}
